<html>
<head><meta charset="utf-8"><title>RUSTC_BOOTSTRAP=cargo · t-cargo · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/246057-t-cargo/index.html">t-cargo</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/246057-t-cargo/topic/RUSTC_BOOTSTRAP.3Dcargo.html">RUSTC_BOOTSTRAP=cargo</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="243471160"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/246057-t-cargo/topic/RUSTC_BOOTSTRAP%3Dcargo/near/243471160" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jon Gjengset <a href="https://rust-lang.github.io/zulip_archive/stream/246057-t-cargo/topic/RUSTC_BOOTSTRAP.3Dcargo.html#243471160">(Jun 22 2021 at 04:26)</a>:</h4>
<p><span class="user-mention" data-user-id="232545">@Joshua Nelson</span> I'm looking through the work you did to disable the use of <code>RUSTC_BOOTSTRAP</code> in build scripts, and wanted to take the temperature on allowing <code>RUSTC_BOOTSTRAP=cargo</code> (inspired by the <code>=crate</code> syntax) as a way to _just_ allow nightly features in Cargo and _not_ in Rustc. Maybe that's leaning more into <code>RUSTC_BOOTSTRAP</code> when we don't want to encourage it, but it feels valuable to allow users who decide that it's right for them to only enable it as narrowly as they can get away with.</p>



<a name="243471254"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/246057-t-cargo/topic/RUSTC_BOOTSTRAP%3Dcargo/near/243471254" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/246057-t-cargo/topic/RUSTC_BOOTSTRAP.3Dcargo.html#243471254">(Jun 22 2021 at 04:29)</a>:</h4>
<p><span class="user-mention" data-user-id="120054">@Jon Gjengset</span> you can already do that with __CARGO_CHANNEL_OVERRIDE_DO_NOT_USE or whatever it's called</p>



<a name="243471316"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/246057-t-cargo/topic/RUSTC_BOOTSTRAP%3Dcargo/near/243471316" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/246057-t-cargo/topic/RUSTC_BOOTSTRAP.3Dcargo.html#243471316">(Jun 22 2021 at 04:30)</a>:</h4>
<p>And yes I'm aware it says do not use, I want to reiterate that these are <em>not</em> features, the are implementation details and I really wish people wouldn't use them</p>



<a name="243471323"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/246057-t-cargo/topic/RUSTC_BOOTSTRAP%3Dcargo/near/243471323" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/246057-t-cargo/topic/RUSTC_BOOTSTRAP.3Dcargo.html#243471323">(Jun 22 2021 at 04:30)</a>:</h4>
<p>The only reason I made rustc_bootstrap more flexible was <em>because</em> it allowed forbidding it in build scripts</p>



<a name="243471598"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/246057-t-cargo/topic/RUSTC_BOOTSTRAP%3Dcargo/near/243471598" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/246057-t-cargo/topic/RUSTC_BOOTSTRAP.3Dcargo.html#243471598">(Jun 22 2021 at 04:37)</a>:</h4>
<p>I think if you really want to pursue this the "testing" channel you suggested seems reasonable, I don't know what the state of that is. But I really don't think we should be expanding RUSTC_BOOTSTRAP more than absolutely necessary</p>



<a name="243471842"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/246057-t-cargo/topic/RUSTC_BOOTSTRAP%3Dcargo/near/243471842" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/246057-t-cargo/topic/RUSTC_BOOTSTRAP.3Dcargo.html#243471842">(Jun 22 2021 at 04:42)</a>:</h4>
<p>Note also that doing this means you have to update rustc to hard code knowledge of cargo, since presumably you don't want to allow crates named "cargo" to use unstable features; or resolve the ambiguity some other way.</p>



<a name="243516449"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/246057-t-cargo/topic/RUSTC_BOOTSTRAP%3Dcargo/near/243516449" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/246057-t-cargo/topic/RUSTC_BOOTSTRAP.3Dcargo.html#243516449">(Jun 22 2021 at 13:34)</a>:</h4>
<p>there's only gonna be at most one crate named cargo, and usually zero crates named cargo, so that doesn't seem like a big problem</p>



<a name="243589238"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/246057-t-cargo/topic/RUSTC_BOOTSTRAP%3Dcargo/near/243589238" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jon Gjengset <a href="https://rust-lang.github.io/zulip_archive/stream/246057-t-cargo/topic/RUSTC_BOOTSTRAP.3Dcargo.html#243589238">(Jun 22 2021 at 23:00)</a>:</h4>
<blockquote>
<p>I think if you really want to pursue this ..</p>
</blockquote>
<p>The fundamental challenge I have is that I want to help provide evidence for stabilization of <code>patch-in-config</code>, but I cannot just use nightly. None of my proposed alternatives seemed to be considered particularly promising (for generally good reasons), and so for now I've just settled for using <code>RUSTC_BOOTSTRAP=1</code> + <code>-Zallow-features=patch-in-config</code>. It works, even though I wish I could do something nicer/less hacky :)</p>



<a name="243589296"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/246057-t-cargo/topic/RUSTC_BOOTSTRAP%3Dcargo/near/243589296" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jon Gjengset <a href="https://rust-lang.github.io/zulip_archive/stream/246057-t-cargo/topic/RUSTC_BOOTSTRAP.3Dcargo.html#243589296">(Jun 22 2021 at 23:01)</a>:</h4>
<p>Once <code>patch-in-config</code> is (hopefully) stabilized, I will remove that hack and go back to using a regular stable again.</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>